#ifndef SHEETHEADERVIEW_H
#define SHEETHEADERVIEW_H

#include <QHeaderView>

class MatrixBase;
class SheetHeaderViewPrivate;
class SheetHeaderView : public QHeaderView
{
    Q_OBJECT
public:
    explicit SheetHeaderView(Qt::Orientation ori, QWidget *parent = 0);
    ~SheetHeaderView();

    void setMatrix(MatrixBase* matrix);
    void relayoutDelegates();

protected:
    void showEvent(QShowEvent *);

private slots:
    void handleSectionResized(int i);
    void handleSectionMoved(int logic, int oldVisualIndex, int newVisualIndex);
    void onDelegateClicked(const QPoint& pos);

private:
    SheetHeaderViewPrivate* d_ptr;
    Q_DISABLE_COPY(SheetHeaderView)
};

#endif // SHEETHEADERVIEW_H
